home *** CD-ROM | disk | FTP | other *** search
Wrap
package Forms { import flash.display.*; import flash.events.*; import flash.filters.GlowFilter; import flash.geom.ColorTransform; import flash.geom.Point; import flash.text.*; [Embed(source="/_assets/assets.swf", symbol="Forms.MapForm")] public class MapForm extends CluelessBaseForm { protected var _glowparent:DisplayObject = null; protected var _glowfiltergroup:Array; protected var _colortransformDisabled:ColorTransform; public var _mcLevelSelect:MovieClip; public var _bPlayTutorial:SimpleButton; public var _tfPlayTutorial:TextField; protected var _aStarFilterDisabled:Array; protected var _bLevelSelectorShown:Boolean = false; public var _mcDialogStart:MovieClip; protected var _aFilterDisabled:Array; protected var _colortransformEnabled:ColorTransform; protected var _pPointLevelSelectShow:Point; protected var _aStarFilterSelected:Array; protected var _aStarsEnabled:Array; protected var _sLevelPrefix:String = ""; public var _tfMainMenu:TextField; protected var _pPointLevelSelectHide:Point; protected var _glowfilter:GlowFilter; protected var _sMouseOverStoreName:String = ""; protected var _sSelectedStoreName:String = ""; public var _bStore0:SimpleButton; public var _bStore1:SimpleButton; public var _bStore3:SimpleButton; public var _bStore4:SimpleButton; public var _bStore6:SimpleButton; public var _bStore7:SimpleButton; public var _bStore8:SimpleButton; public var _bStore2:SimpleButton; public var _bStore5:SimpleButton; public var _bStore9:SimpleButton; public var _mcComplete1:MovieClip; public var _mcComplete2:MovieClip; public var _mcComplete3:MovieClip; public var _mcComplete7:MovieClip; public var _mcComplete8:MovieClip; public var _mcComplete9:MovieClip; public var _mcComplete4:MovieClip; public var _mcComplete5:MovieClip; public var _mcComplete6:MovieClip; public var _tfStoreName:TextField; public var _bStore11:SimpleButton; protected var _aStars:Array; public var _tfStoreDescription:TextField; protected var _iPhase:int = 0; protected var _aStarFilterEnabled:Array; public var _tfHonors:TextField; public var _bMenu:SimpleButton; protected var _aFilterEnabled:Array; public var _mcAchievements:SimpleButton; protected var _doSelectedStore:DisplayObject = null; public function MapForm() { var _loc1_:int = 0; _aStars = new Array(); _aStarsEnabled = new Array(); _bLevelSelectorShown = false; _doSelectedStore = null; _sSelectedStoreName = ""; _sMouseOverStoreName = ""; _glowparent = null; _iPhase = 0; _sLevelPrefix = ""; super(); Music = "MenuMusic"; Profile.CurrentProfile.MapPressTutorial = false; setBackButton(_bMenu); _aFilterDisabled = _bStore7.filters; _aFilterEnabled = _bStore1.filters; _colortransformDisabled = _bStore7.transform.colorTransform; _colortransformEnabled = _bStore1.transform.colorTransform; _mcAchievements.addEventListener(MouseEvent.CLICK,onAchievements,false,0,true); _bPlayTutorial.addEventListener(MouseEvent.CLICK,onPlayTutorial,false,0,true); addEventListener(MouseEvent.MOUSE_MOVE,onLevelSelectMouseMove,false,0,true); installMouseOverSound(_bMenu); installMouseOverSound(_mcAchievements); installMouseOverSound(_bPlayTutorial); _loc1_ = 0; while(_loc1_ <= 9) { getChildByName("_bStore" + _loc1_.toString()).addEventListener(MouseEvent.CLICK,onStore,false,0,true); _loc1_++; } _loc1_ = 0; while(_loc1_ <= 9) { getChildByName("_bStore" + _loc1_.toString()).addEventListener(MouseEvent.MOUSE_OVER,onMouseOver,false,0,true); _loc1_++; } _glowfiltergroup = _bStore4.filters; _glowfilter = _glowfiltergroup[0] as GlowFilter; addEventListener(Event.ENTER_FRAME,onEnterFrame,false,0,true); localize(_tfMainMenu,"Main Menu"); localize(_tfHonors,"Honors"); localize(_tfPlayTutorial,"Play Tutorial"); _aStarFilterEnabled = _mcLevelSelect.getChildByName("_mcStar1").filters; _aStarFilterSelected = _mcLevelSelect.getChildByName("_mcStar2").filters; _aStarFilterDisabled = _mcLevelSelect.getChildByName("_mcStar3").filters; _aStars.push(null); _loc1_ = 1; while(_loc1_ <= 10) { _aStars.push(_mcLevelSelect.getChildByName("_mcStar" + _loc1_.toString())); _aStarsEnabled.push(false); _aStars[_loc1_].addEventListener(MouseEvent.MOUSE_OVER,onStarMouseOver,false,0,true); _aStars[_loc1_].addEventListener(MouseEvent.MOUSE_OUT,onStarMouseOut,false,0,true); _aStars[_loc1_].addEventListener(MouseEvent.CLICK,onStarMouseClick,false,0,true); _loc1_++; } _pPointLevelSelectShow = new Point(_mcLevelSelect.x,_mcLevelSelect.y); _pPointLevelSelectHide = new Point(_mcDialogStart.x,_mcDialogStart.y); _mcLevelSelect.x = _pPointLevelSelectHide.x; _mcLevelSelect.y = _pPointLevelSelectHide.y; } public static function getLevelForm(param1:String) : BaseForm { var _loc2_:DressupForm = null; var _loc3_:DressupLevelInfo = null; var _loc4_:CutsceneForm = null; _loc2_ = new DressupForm(); _loc3_ = new DressupLevelInfo(param1); _loc2_.init(_loc3_); if(_loc3_.LevelCutscene != "") { (_loc4_ = new CutsceneForm()).init(_loc2_,_loc3_.LevelCutscene); return _loc4_; } return _loc2_; } internal function onPlayTutorial(param1:Event) : void { var _loc2_:BaseForm = null; _loc2_ = getLevelForm("Tutorial"); Profile.CurrentProfile.MapPressTutorial = true; Profile.CurrentProfile.TutorialMask &= 65535 - Profile.kTutorial_DressupMask; hideLevelSelect(); setForm(_loc2_); } override public function onFocus() : void { super.onFocus(); updateBuildings(); if((Profile.CurrentProfile.TutorialMask & Profile.kTutorial_MapMask) == 0) { setTutorial(new MCTutorialMap()); Profile.CurrentProfile.TutorialMask |= Profile.kTutorial_MapMask; } if((Profile.CurrentProfile.TutorialMask & Profile.kTutorial_Concave) == 0 && Profile.CurrentProfile.hasUnlockedClothes()) { setTutorial(new MCTutorialConcave()); Profile.CurrentProfile.TutorialMask |= Profile.kTutorial_Concave; } if(Profile.CurrentProfile.Ending == 1) { onBack(new MouseEvent("")); } } protected function onStore(param1:MouseEvent) : void { var _loc2_:DisplayObject = null; var _loc3_:String = null; var _loc4_:BaseForm = null; _loc2_ = param1.target as DisplayObject; if(_loc2_.name == "_bStore4" && Profile.CurrentProfile.hasUnlockedClothes()) { onSnapshot(param1); } else { _loc3_ = Profile.CurrentProfile.getLevelForStore(_loc2_.name); if(_loc3_ != "Tutorial") { Profile.CurrentProfile.TutorialMask |= Profile.kTutorial_DressupMask; showLevelSelect(Profile.CurrentProfile.getLevelPrefixForStore(_loc2_.name),_loc2_,_sMouseOverStoreName); } else { _loc4_ = getLevelForm(_loc3_); Profile.CurrentProfile.TutorialMask &= 65535 - Profile.kTutorial_DressupMask; hideLevelSelect(); setForm(_loc4_); } } } internal function onStarMouseOut(param1:MouseEvent) : void { var _loc2_:DisplayObject = null; _loc2_ = param1.currentTarget as DisplayObject; if(_aStarsEnabled[getStarIndex(_loc2_)]) { _loc2_.filters = _aStarFilterEnabled; } } internal function showLevelSelect(param1:String, param2:DisplayObject, param3:String) : void { var _loc4_:int = 0; var _loc5_:int = 0; var _loc6_:String = null; var _loc7_:TextField = null; _sSelectedStoreName = param3; _doSelectedStore = param2; _bLevelSelectorShown = true; _loc4_ = 0; _loc5_ = 1; while(_loc5_ < _aStars.length) { if(!Profile.CurrentProfile.isLevelUnlocked(param1 + "-" + _loc5_.toString())) { break; } _loc4_++; _loc5_++; } _sLevelPrefix = param1; _mcLevelSelect.x = param2.x; _mcLevelSelect.y = param2.y; _mcLevelSelect.visible = true; if(_mcTutorial == null) { if(_loc4_ > 0) { if((Profile.CurrentProfile.TutorialMask & Profile.kTutorial_LevelSelectorEnabled) == 0) { setTutorial(new MCTutorialLevelSelectEnabled()); _mcTutorial.x = _mcLevelSelect.x; _mcTutorial.y = _mcLevelSelect.y + _mcLevelSelect.height; Profile.CurrentProfile.TutorialMask |= Profile.kTutorial_LevelSelectorEnabled; } } else if((Profile.CurrentProfile.TutorialMask & Profile.kTutorial_LevelSelectorDisabled) == 0) { setTutorial(new MCTutorialLevelSelectDisabled()); _mcTutorial.x = _mcLevelSelect.x; _mcTutorial.y = _mcLevelSelect.y + _mcLevelSelect.height; Profile.CurrentProfile.TutorialMask |= Profile.kTutorial_LevelSelectorDisabled; } } _loc7_ = _mcLevelSelect.getChildByName("_tfLevelName") as TextField; if(_loc4_ > 0) { _loc6_ = "SELECT A LEVEL"; _loc7_.alpha = 1; } else { _loc6_ = "UNLOCK THIS LEVEL FIRST"; _loc7_.alpha = 0.5; } _loc7_.text = _loc6_; (_mcLevelSelect.getChildByName("_tfLevelDescription") as TextField).text = _sSelectedStoreName; showStars(_loc4_); } internal function onEnterFrame(param1:Event) : void { var _loc2_:int = 0; ++_iPhase; _loc2_ = _iPhase % 60; if(_loc2_ > 30) { _loc2_ = 60 - _loc2_; } if(_glowparent != null) { _glowfilter.blurX = _loc2_ + 25; _glowfilter.blurY = _loc2_ + 25; _glowparent.filters = _glowfiltergroup; } } internal function onLevelJump(param1:Event) : void { setForm(new LevelJumpForm()); } protected function onAchievements(param1:MouseEvent) : void { playSound("ClickButtonTrophySound"); setForm(new AchievementsForm()); } internal function onLevelSelectMouseMove(param1:MouseEvent) : void { if(_bLevelSelectorShown) { if(!_doSelectedStore.hitTestObject(_mcMouseCursor) && !_mcLevelSelect.hitTestObject(_mcMouseCursor) && _mcTutorial == null) { hideLevelSelect(); } } } protected function onSnapshot(param1:MouseEvent) : void { setForm(new SnapshotForm()); } internal function getStarIndex(param1:DisplayObject) : int { return parseInt(param1.name.replace("_mcStar","")); } internal function hideLevelSelect() : void { _bLevelSelectorShown = false; _mcLevelSelect.visible = false; } internal function onStarMouseOver(param1:MouseEvent) : void { var _loc2_:DisplayObject = null; var _loc3_:int = 0; var _loc4_:String = null; var _loc5_:String = null; var _loc6_:Number = NaN; var _loc7_:TextField = null; var _loc8_:String = null; var _loc9_:String = null; var _loc10_:Level = null; var _loc11_:String = null; _loc2_ = param1.currentTarget as DisplayObject; _loc3_ = getStarIndex(_loc2_); if(_aStarsEnabled[_loc3_]) { _loc4_ = _sLevelPrefix + "-" + _loc3_.toString(); _loc2_.filters = _aStarFilterSelected; _loc5_ = Profile.CurrentProfile.getBestGradeForLevel(_loc4_); _loc6_ = Profile.CurrentProfile.getBestScoreForLevel(_loc4_); _loc7_ = _mcLevelSelect.getChildByName("_tfLevelName") as TextField; if(_loc6_ > 0) { _loc7_.text = "Replay " + _loc4_; } else { _loc7_.text = "Play " + _loc4_; } if(_loc6_ > 0) { _loc9_ = ""; _loc10_ = Database.getInstance().getLevel(_loc4_); for each(_loc11_ in _loc10_.Occasions) { _loc9_ += Database.getInstance().getTheme(_loc11_).Description + ", "; } _loc9_ = _loc9_.substring(0,_loc9_.lastIndexOf(", ")); _loc8_ = "Fashions: " + _loc9_ + "\n" + "Best Level Grade: " + _loc5_; } else { _loc8_ = "Not yet completed"; } (_mcLevelSelect.getChildByName("_tfLevelDescription") as TextField).text = _loc8_; } } internal function showStars(param1:int) : void { var _loc2_:int = 0; _loc2_ = 1; while(_loc2_ <= param1) { _aStars[_loc2_].filters = _aStarFilterEnabled; _aStarsEnabled[_loc2_] = true; _loc2_++; } _loc2_ = param1 + 1; while(_loc2_ < _aStars.length) { _aStars[_loc2_].filters = _aStarFilterDisabled; _aStarsEnabled[_loc2_] = false; _loc2_++; } } internal function updateBuildings() : void { var _loc1_:int = 0; var _loc2_:DisplayObject = null; var _loc3_:MovieClip = null; _glowparent = null; _loc1_ = 1; while(_loc1_ <= 9) { _loc2_ = getChildByName("_bStore" + _loc1_.toString()) as DisplayObject; _loc3_ = getChildByName("_mcComplete" + _loc1_.toString()) as MovieClip; _loc3_.visible = false; _loc3_.mouseEnabled = false; if(Profile.CurrentProfile.isStoreComplete(_loc2_.name)) { _loc2_.filters = _aFilterEnabled; _loc2_.transform.colorTransform = _colortransformEnabled; _loc3_.visible = Profile.CurrentProfile.isStoreComplete(_loc2_.name); } else if(Profile.CurrentProfile.isStoreUnlocked(_loc2_.name)) { _loc2_.filters = _glowfiltergroup; _loc2_.transform.colorTransform = _colortransformEnabled; _glowparent = _loc2_; } else if(_loc2_.name == "_bStore4" && Profile.CurrentProfile.hasUnlockedClothes()) { _loc2_.filters = _aFilterEnabled; _loc2_.transform.colorTransform = _colortransformEnabled; } else { _loc2_.filters = _aFilterDisabled; _loc2_.transform.colorTransform = _colortransformDisabled; } _loc1_++; } _loc2_ = getChildByName("_bStore0") as DisplayObject; _loc2_.visible = false; if(!Profile.CurrentProfile.isStoreComplete(_loc2_.name)) { _loc2_.visible = true; } } internal function onStarMouseClick(param1:MouseEvent) : void { var _loc2_:DisplayObject = null; var _loc3_:int = 0; var _loc4_:String = null; var _loc5_:BaseForm = null; _loc2_ = param1.currentTarget as DisplayObject; _loc3_ = getStarIndex(_loc2_); if(_aStarsEnabled[_loc3_]) { _loc4_ = _sLevelPrefix + "-" + _loc3_.toString(); _loc5_ = getLevelForm(_loc4_); hideLevelSelect(); setForm(_loc5_); } } protected function onMouseOver(param1:MouseEvent) : void { var _loc2_:DisplayObject = null; _loc2_ = param1.target as DisplayObject; if(_bLevelSelectorShown && _loc2_ != _doSelectedStore) { hideLevelSelect(); } switch(_loc2_.name) { case "_bStore1": _tfStoreName.text = "- S p r i n g G r e e n P l a z a -"; _sMouseOverStoreName = "Spring Green Plaza"; _tfStoreDescription.text = Localization.getString("Shop here for school, work and fun in the sun."); break; case "_bStore0": _tfStoreName.text = "- S p r i n g G r e e n P l a z a -"; _sMouseOverStoreName = "Spring Green Plaza"; _tfStoreDescription.text = Localization.getString("Shop here for school, work and fun in the sun."); break; case "_bStore2": _tfStoreName.text = "- P r e c i o u s R e n d e z v o u s -"; _sMouseOverStoreName = "Precious Rendezvous"; _tfStoreDescription.text = Localization.getString("Find your formal and vintage fashions here."); break; case "_bStore3": _tfStoreName.text = "- G r a n d E m p o r i u m -"; _sMouseOverStoreName = "Grand Emporium"; _tfStoreDescription.text = Localization.getString("Houses makers of designer gowns. Made to suit your high-class lifestyle."); break; case "_bStore4": _tfStoreName.text = "- C o n c a v e P h o t o S t u d i o -"; _sMouseOverStoreName = "Concave Photo Studio"; if(Profile.CurrentProfile.hasUnlockedClothes()) { _tfStoreDescription.text = Localization.getString("Show off your best poses here."); } else { _tfStoreDescription.text = Localization.getString("Unlock items first."); } break; case "_bStore5": _tfStoreName.text = "- R e d C a r p e t -"; _sMouseOverStoreName = "Red Carpet"; _tfStoreDescription.text = Localization.getString("A place where you can find vintage, iconic pieces."); break; case "_bStore6": _tfStoreName.text = "- E l e v e S a l o n -"; _sMouseOverStoreName = "Eleve Salon"; _tfStoreDescription.text = Localization.getString("Feeling like something different? Shop here for some Asian flair or military wear."); break; case "_bStore7": _tfStoreName.text = "- R o s s w e l l C o s t u m e s -"; _sMouseOverStoreName = "Rosswell Costumes"; _tfStoreDescription.text = Localization.getString("Feeling gothic? Feeling social? Shop here for club wear and gothic fashions."); break; case "_bStore8": _tfStoreName.text = "- D u c h e s s L i n g e r i e -"; _sMouseOverStoreName = "Duchess Lingerie"; _tfStoreDescription.text = Localization.getString("Offers a wide range of choices whether you feel like sweating it out in the gym or getting a tan at the beach."); break; case "_bStore9": _tfStoreName.text = "- M a r q u i s J e w e l r y -"; _sMouseOverStoreName = "Marquis Jewelry"; _tfStoreDescription.text = Localization.getString("Finish your look with matching bags, hats and flashy bling-blings. All to be found in this shop."); } _tfStoreName.alpha = 1; _tfStoreDescription.alpha = 1; if(_loc2_.name != "_bStore4") { if(!Profile.CurrentProfile.isStoreUnlocked(_loc2_.name)) { _tfStoreName.alpha = 0.5; _tfStoreDescription.alpha = 0.5; _tfStoreDescription.text = Localization.getString("Can\'t shop here yet."); } } } } }